home *** CD-ROM | disk | FTP | other *** search
/ Developer CD Series 1996 October: Mac OS SDK / Dev.CD Oct 96 SDK / Dev.CD Oct 96 SDK2.toast / Development Kits (Disc 2) / OpenDoc Development Framework / ODFDev / Bitmap / Sources / Content.h < prev    next >
Encoding:
Text File  |  1996-08-16  |  4.5 KB  |  152 lines  |  [TEXT/MPS ]

  1. //========================================================================================
  2. //
  3. //    File:                Content.h
  4. //    Release Version:    $ ODF 1 $
  5. //
  6. //    Author:                Mary Boetcher
  7. //
  8. //    Copyright:    (c) 1993 - 1996 by Apple Computer, Inc., all rights reserved.
  9. //
  10. //========================================================================================
  11.  
  12. #ifndef BMPCONT_H
  13. #define BMPCONT_H
  14.  
  15. // ----- FrameWork Includes -----
  16.  
  17. #ifndef FWCONTNT_H
  18. #include "FWContnt.h"
  19. #endif
  20.  
  21. #ifndef FWGRREF_H
  22. #include "FWGrRef.h"
  23. #endif
  24.  
  25. #ifndef FWBITMAP_H
  26. #include "FWBitmap.h"
  27. #endif
  28.  
  29. //========================================================================================
  30. //    Forward Declarations
  31. //========================================================================================
  32.  
  33. class CBitmapPart;
  34. class CBitmapSelection;
  35.  
  36. //========================================================================================
  37. //    class CBitmapContent
  38. //========================================================================================
  39.  
  40. class CBitmapContent : public FW_CContent
  41. {
  42. //----------------------------------------------------------------------------------------
  43. //    Initialization/Destruction
  44. //
  45. public:
  46.     FW_DECLARE_AUTO(CBitmapContent)
  47.     
  48.     CBitmapContent(Environment* ev, CBitmapPart* part);
  49.  
  50.     virtual ~CBitmapContent();
  51.  
  52. //----------------------------------------------------------------------------------------
  53. //    Inherited API
  54. //
  55. public:
  56.     virtual void        Externalize(Environment* ev,
  57.                                      ODStorageUnit* destinationSU,
  58.                                      FW_EStorageKinds storageKind,
  59.                                      FW_CCloneInfo* cloneInfo);
  60.     virtual FW_Boolean    Internalize(Environment* ev,
  61.                                      ODStorageUnit* storageUnit, 
  62.                                      FW_EStorageKinds storageKind,
  63.                                      FW_CCloneInfo* cloneInfo);
  64.                                              
  65. //----------------------------------------------------------------------------------------
  66. //    Private methods
  67. //
  68. public:
  69.     void                ExternalizeBitmapShape(Environment* ev, ODStorageUnit* storageUnit, const FW_CBitmap& bitmap);
  70.     void                InternalizeBitmapShape(Environment* ev, ODStorageUnit* storageUnit);
  71.  
  72. #ifdef FW_BUILD_MAC
  73.     void                ExternalizePICTData(Environment* ev, ODStorageUnit* storageUnit, const FW_CBitmap& bitmap);
  74.  
  75.     void                InternalizePICTData(Environment* ev, ODStorageUnit* storageUnit);
  76.     void                InternalizePICTFile(Environment* ev, ODStorageUnit* storageUnit);
  77.     void                MacSetBitmap(Environment* ev, FW_PlatformPict picHandle);
  78. #endif
  79.     
  80. //----------------------------------------------------------------------------------------
  81. //    Getters & Setters
  82. //
  83. public:
  84.     FW_CBitmap             GetBitmap(Environment* ev) const;
  85.     void                 SetBitmap(Environment* ev, FW_CBitmap bitmap);
  86.  
  87.     void                UseDefaultBitmap(Environment* ev);
  88.  
  89. //----------------------------------------------------------------------------------------
  90. //    Data Members
  91. //
  92. protected:
  93.     FW_CBitmap            fBitmap;        // counted pointer to the bitmap
  94.     CBitmapPart*        fBitmapPart;
  95. };
  96.  
  97. //========================================================================================
  98. //    class CBitmapSelectionContent
  99. //========================================================================================
  100.  
  101. class CBitmapSelectionContent : public FW_CContent
  102. {
  103. //----------------------------------------------------------------------------------------
  104. //    Initialization/Destruction
  105. //
  106. public:
  107.     CBitmapSelectionContent(Environment* ev, 
  108.                             CBitmapPart* part, 
  109.                             CBitmapSelection* selection, 
  110.                             CBitmapContent* bitmapContent);
  111.  
  112.     virtual ~CBitmapSelectionContent();
  113.  
  114. //----------------------------------------------------------------------------------------
  115. //    Inherited API
  116. //
  117. public:
  118.     virtual void        Externalize(Environment* ev,
  119.                                      ODStorageUnit* storageUnit,
  120.                                      FW_EStorageKinds storageKind,
  121.                                      FW_CCloneInfo* cloneInfo);
  122.     virtual FW_Boolean    Internalize(Environment* ev,
  123.                                      ODStorageUnit* storageUnit, 
  124.                                      FW_EStorageKinds storageKind,
  125.                                      FW_CCloneInfo* cloneInfo);
  126.  
  127.     virtual ODShape*    CreateDataFrameShape(Environment* ev) const;
  128.  
  129. //----------------------------------------------------------------------------------------
  130. //    New API
  131. //
  132. public:
  133.     void                GetSelectRect(FW_CPlatformRect& rect) const
  134.                             {rect = fSelectRect;}
  135.     void                SetSelectRect(const FW_CPlatformRect& rect)
  136.                             {fSelectRect = rect;}
  137.                             
  138.  
  139.     void                SelectEntireBitmap(Environment* ev);
  140.  
  141. //----------------------------------------------------------------------------------------
  142. //    Data Members
  143. //
  144. private:
  145.     CBitmapPart*        fBitmapPart;
  146.     CBitmapContent*        fBitmapContent;
  147.     CBitmapSelection*    fBitmapSelection;
  148.     FW_CPlatformRect    fSelectRect;
  149. };
  150.  
  151.  
  152. #endif